#ifndef _SG_INTERFACE_IRRLICHT_H_
#define _SG_INTERFACE_IRRLICHT_H_

#include <interface_lua.h>

namespace irr {
    class IrrlichtDevice;
}

class IrrlichtInterface
{
    public:
        IrrlichtInterface(int width, int height);
        ~IrrlichtInterface();

        bool isRunning();

        friend LuaInterface::ostream& operator << (LuaInterface::ostream& os, IrrlichtInterface*& value);
        friend LuaInterface::istream& operator >> (LuaInterface::istream& is, IrrlichtInterface*  value);

        void tempLoopBody();

        /**
         * Lua bindings
        **/
        static void registerMe(LuaInterface& lua);
    private:
        class irr::IrrlichtDevice * m_device;
};

#endif
